package com.colin.videoservice.service;

import com.colin.bean.Video;
import com.colin.bean.VideoCollect;
import com.colin.bean.VideoLike;
import com.colin.response.R;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

@Service
public interface VideoService {
    R<Video> getVideoPath(Long videoId);

    R<Boolean> deleteVideo(Long videoId);

    R<Boolean> likeVideo(String videoId);

    R<Boolean> collectVideo(String videoId);

    R<List<Video>> searchVideoList(String keyword);

    R<Boolean> doDisLikeVideo(String videoId);

    R<List<Video>> getLikeVideoList();

    R<List<Video>> getCollectVideoList();

    R<Boolean> doUnCollectVideo(String videoId);

    R<Boolean> initVideo();

    R<Boolean> uploadVideo(MultipartFile videoFile);

    R<Boolean> uploadCover(MultipartFile coverFile);

    R<Boolean> uploadVideoDetail(Video videoDetail);

    R<VideoLike> getLikeStatus(String videoId);

    R<VideoCollect> getCollectStatus(String videoId);
}
